Asynchronous Transfer Mode (ATM) technology is expected to be the base technology for the next generation of high speed data networks. High speed networks must support diverse applications with different traffic and Quality Of Service (QOS) requirements. Different kinds of applications require different control flow strategies. Some applications, such as multimedia and time critical data applications, require guaranteed limits on transmission delays and guaranteed throughput but can tolerate some loss of data. Other applications can tolerate variations in delay and throughput but are very loss sensitive.
In ATM Reserved Bandwidth (RB) service, a user must establish a traffic contract with the network at call set-up before transmitting data (see FIG. 1). The contract includes specification of a desired QOS class and a set of traffic descriptors. The network can either refuse the call or, by allocating bandwidth to the call, provide the desired QOS for the ATM connection. The bandwidth actually allocated may be less than the anticipated peak bandwidth in order to benefit from statistical multiplexing gains. More specifically, since multiple connections are multiplexed onto a single link, it is statistically improbable that all connections will need their peak bandwidth at a the same time. Therefore, at a given time, a connection requiring high bandwidth, can "borrow" bandwidth allocated to but not actually being used by other connections.
In a LAN environment, data sources are bursty and unpredictable. Traffic rates, over time, can vary by several orders of magnitude. For such unpredictable sources, the anticipated peak bandwidth could be allocated at call setup in order to avoid heavy data losses as a result of congestion inside the network. However, the network would be inefficiently used since bandwidth reserved for a particular connection could not be made available to other connections regardless of whether it was needed by the reserving connection.
One way to increase network link utilization is through the addition of a Non Reserved Bandwidth (NRB) service class, also called Best Effort (BE) service (see FIG. 2). In this service class, bandwidth is not reserved and a source transmits on a best effort basis, grabbing as much of the available bandwidth. Available bandwidth excludes any bandwidth already allocated for RB traffic being carried on the same link. In the absance of advance allocations of bandwidth, NRB service requires a flow control mechanism in order to avoid congestion in the network. The first objective of such a flow control mechanism is to avoid congestion in the network; the second objective is to balance the available bandwidth among different competing sources.
The use of backpressure signals to provide flow control has been extensively studied and is widely implemented. The objective of backpressure flow control is to stop incoming traffic at a congested node of the network before data is lost as a consequence of the congestion. Backpressure signals generated at a particular node can be sent to upstream nodes to stop or restart data traffic on connections from the upstream node to the signal-generating node. In this scheme, every source is supposed to be able to stop or restart its NRB traffic when receiving an appropriate backpressure signal.
One such flow control scheme is described in the co-pending U.S. patent application Ser. No. 08/554,113 filed on Nov. 6, 1995. This scheme is a hop by hop backpressure mechanism. The term "hop" is well known in the prior art (see FIG. 3) and can be defined as a standard interface between any two nodes or systems. Examples of standard interfaces are: User to Network Interface (UNl); Network to Network Interface (NNl); and Private Network to Network Interface (PNNl). The backpressure mechanism disclosed in the referenced application employs two primitives, (1) a selective backpressure primitive which allows a node to control a single best effort connection, and (2) a global backpressure primitive which, in case of global congestion, allows a node to control an entire multiple-connection link without sending as many selective backpressure primitives as there are of best effort connections currently supported on that link.
A standard ATM cell routing label includes two complementary route identifiers: a virtual path identifier VPl and a virtual channel identifier VCl. In an ATM network, a virtual channel connection is identified by a (VPl,VCl) combination. An ATM switch examines the both the VPl+VCl fields in a label in order to establish an association between an incoming connection (VPlin, VClin) and an outgoing connection (VPlout, VClout). However it is possible for an ATM switch to route a whole set of virtual channels by analyzing only their VPl identifier. All virtual channel connections with the same VPl are then switched in a similar manner. Such a switch is called a VP switch and a network comprising VP switches is called a VP network. Such a switch (and network) is described by J. Y. Le Boudec in `The Asynchronous Transfer Mode: a tutorial`, Computer Networks and ISDN Systems, vol. 24, 1992, p. 279-309.
Implementation of a selective backpressure mechanism such as the one described in the referenced co-pending application is not possible in a VP network because the switching elements (VP switches or VP sub-networks) of said VP network ignore the VCl identifier of the virtual connections. The VP switching elements thus cannot handle selective backpressure requests generated by the selective backpressure mechanism.
For example, in the network illustrated in FIG. 4, ATM virtual path network 120 connects ATM virtual circuit networks 110 and 130. If congestion occurs in node 131 due to the data traffic on connection 132, the flow control mechanism in node 131 tries to throttle the incoming data traffic by sending a selective backpressure signal to upstream node 121. If node 121 is a VP node, it does not recognize individual connection 132 and would not respond to the selective backpressure signal. The only way to prevent congestion is to generate a global backpressure signals which throttles traffic on all connections making up virtual path 133. The use of the global backpressure approach is incompatible with equitable flow control management.
Another drawback is that it is not possible to control the data traffic between virtual channels inside the VP network itself since virtual channels are not defined in said VP network.